package thread;

class MyThread extends Thread {
//因为thread里面有一个run方法,所以我们要重写run方法才能实现新的线程逻辑
// 线程创建和销毁
// 线程调度
// 线程状态管理 （新建、就绪、运行、阻塞、死亡）
// 线程同步和通信
    @Override
    public void run() {
        while (true) {
            System.out.println("hello Thread");
            try {
                Thread.sleep(1000);//static方法
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}
public class Demo1 {
    public static void main(String[] args) throws Exception {
        Thread thread = new MyThread();
        // 使用run的时候main调用的是一个普通方法run,只有main一个线程 只有调用了start,才能执行两个线程
        // thread.run();
        // 启动线程
        thread.start();//开启线程后继续往下走
        //是调用系统的api,真正在操作系统中创建一个线程
        // 这个新的线程就会以run作为入口方法（执行run中的逻辑）
        while (true) {
            System.out.println("hello main");
            Thread.sleep(1000);//static方法
        }
    }
}
